//
// Created by HFauto on 25-7-31.
//

#ifndef ZX_SYS_H
#define ZX_SYS_H

#include <stdio.h>
#include <inttypes.h>

#include "sdkconfig.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_chip_info.h"
#include "esp_flash.h"
#include "esp_system.h"
#include "esp_log.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/event_groups.h"
#include "esp_system.h"
#include "esp_log.h"
#include "nvs_flash.h"
#include "esp_bt.h"

#include "esp_gap_ble_api.h"
#include "esp_gatts_api.h"
#include "esp_bt_defs.h"
#include "esp_bt_main.h"
#include "esp_bt_device.h"
#include "esp_gatt_common_api.h"

#include "driver/uart.h"

#include "esp_bt.h"
#include "nvs_flash.h"
#include "esp_bt_device.h"
#include "esp_gap_ble_api.h"
#include "esp_gattc_api.h"
#include "esp_gatt_defs.h"
#include "esp_bt_main.h"
#include "esp_system.h"
#include "esp_gatt_common_api.h"
#include "esp_log.h"
#include "freertos/FreeRTOS.h"

#include "esp_gap_ble_api.h"
#include "esp_gatts_api.h"
#include "esp_bt_defs.h"
#include "esp_bt_main.h"
#include "esp_bt_device.h"
#include "esp_gatt_common_api.h"

#include "logger.hpp"
#include "task.hpp"
#include "wifi_ap.hpp"
#include "udp_socket.hpp"
#include "tcp_socket.hpp"
#include "fmt/base.h"
#include "fmt/ranges.h"

#ifdef __cplusplus

using namespace std::chrono_literals;
using namespace std::placeholders;

class zxSys {
public:
    static void printfSysInfo();
    static void mainWhile(int millisecond = 1000, bool logOpen = false);
    static void reboot();
    static void initNvs();
protected:

};

#endif
#endif //ZX_SYS_H
